package com.cfpamf.ms.insur.pay.pojo.po;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author zhangnayi
 */
@ApiModel("订单退款记录")
@Table(name = "pay_refund")
@Data
public class PayRefundPO extends BasePO {

    @ApiModelProperty(value = "版本号-乐观锁")
    private Integer version;

    @ApiModelProperty(value = "订单编号")
    private String orderNo;

    @ApiModelProperty(value = "退款交易流水号")
    private String refundTrxNo;

    @ApiModelProperty(value = "第三方退款流水号")
    private String bankRefundTrxNo;

    @ApiModelProperty(value = "原交易流水号")
    private String payTrxNo;

    @ApiModelProperty(value = "原第三方流水号")
    private String bankPayTrxNo;

    @ApiModelProperty(value = "支付类型，WX ALIPAY")
    private String payType;

    @ApiModelProperty(value = "订单金额(元)")
    private BigDecimal orderAmount;

    @ApiModelProperty(value = "退款金额(元)")
    private BigDecimal refundAmount;

    @ApiModelProperty(value = "退款请求时间")
    private Date refundRequestTime;

    @ApiModelProperty(value = "退款完成时间")
    private Date refundCompleteTime;

    @ApiModelProperty(value = "3-退款中 4-退款成功 5-退款失败")
    private Integer refundStatus;

    @ApiModelProperty(value = "退款原因")
    private String refundReason;

    @ApiModelProperty(value = "第三方退款回调返回信息")
    private String bankRefundNotifyMsg;

    @ApiModelProperty(value = "商户系统编号：INSUR：保险系统")
    private String sourceSys;
}

